import { Page } from '@/lib/form/common';

// 赛事新增
export class Api_POST_CompetitionVO {
  constructor() {
    this.name = '';
    this.typeCode = '';
    this.statusCode = '';
    this.approveStatusCode = '';
    this.address = '';
    this.levelId = '';
    this.provinceCode = '';
    this.cityCode = '';
    this.countyCode = '';
    this.contactPhoneNumber = '';
    this.startTime = '';
    this.endTime = '';
    this.entryStartTime = '';
    this.entryEndTime = '';
    this.entryNotice = '';
    this.disclaimerNotice = '';
    this.regulation = '';
    this.backgroundImage = '';
    this.logoImage = '';
    this.coverImage = '';
    this.route = '';
  }
}

// 赛事查询
export class Api_GET_CompetitionQO extends Page {
  constructor() {
    super();
    this.Filter = '';
    this.StatusCode = '';
    this.TypeCode = '';
    this.StartTime = '';
    this.EndTime = '';
    this.IsPublished = null;
    this.OrganizationUnitIds = [];
    this.IncludeStatus = true;
    this.IncludeLevel = true;
    this.IncludeType = true;
    this.IncludeApproveStatus = true;
    this.HasParent = false; // type: boolean
    this.IncludeParent = true;
  }
}

// 新建组委会
export class Api_POST_CompetitionOrganizationVO {
  constructor() {
    this.organizationKey = '';
    this.organizationName = '';
    this.competitionId = '';
  }
}

// 新建赛事级别
export class Api_POST_CompetitionLevelVO {
  constructor() {
    this.name = '';
    this.needApprove = '';
  }
}

// 新建赛事费用
export class Api_POST_CompetitionChargeVO {
  constructor() {
    this.name = '';
    this.amount = '';
    this.parameter = '';
    this.canDelete = true;
    this.chargeTypeCode = '';
    this.sortOrder = '';
    this.competitionId = '';
  }
}

// 赛事费用列表
export class Api_GET_CompetitionChargeQO {
  constructor() {
    this.competitionId = '';
    this.includeInsurance = '';
  }
}

// 新建日程
export class Api_POST_CompetitionScheduleVO {
  constructor() {
    this.time = '';
    this.endTime = null;
    this.name = '';
    this.location = '';
    this.comment = '';
    this.competitionId = '';
  }
}

// 新建赛事设置
export class Api_POST_CompetitionSettingVO {
  constructor() {
    this.allowPersonalEntry = false;
    this.showEntryData = true;
    this.entryNotice = '';
    this.isOnline = true;
    this.isFree = true;
    this.insuranceCode = 'None';
    this.entryFields = [];
    this.competitionId = '';
  }
}

// 赛事成绩列表查询 无分页
export class Api_GET_GameResultQO {
  constructor() {
    // this.StartDate = '';
    this.SessionId = '';
    this.StatusCode = '';
    // this.LocationCode = '';
  }
}

// 编辑竞技类成绩
export class Api_Post_CompetitiveResultVO {
  constructor() {
    this.combatScoreA = 0;
    this.combatScoreB = 0;
    this.playerWin = '';
    this.winType = '';
    this.statusCode = '';
  }
}
